home *** CD-ROM | disk | FTP | other *** search
/ Linux Cubed Series 7: Sunsite / Linux Cubed Series 7 - Sunsite Vol 1.iso / system / emulator / dosemu / garrot02.rea < prev    next >
Text File  |  1996-11-17  |  5KB  |  119 lines

  1.  
  2. Garrot, a Linux dosemu support driver, releases idle time to system 
  3.  
  4.  
  5. Question 1.1.  What is Garrot? 
  6.  
  7. Garrot is a support program for the Linux DOSEMU subsystem. Garrot is
  8. offered under terms of the GNU General Public License. Garrot improves
  9. Linux performance by coercing the operating system running inside of
  10. DOSEMU to release the CPU back to the main system during idle periods.
  11. CPU usage as reported by 'top' decreases dramatically, dropping down
  12. from 98% to 1% or less. The current version of Garrot is 0.2, and it
  13. should be considered pre-alpha software.
  14.  
  15.  
  16. Question 1.2.  How does one install Garrot?
  17.  
  18. Garrot runs inside of the emulator session. You must move the program
  19. garrot.com into the emulator. You may then run it from the "DOS" command
  20. prompt, usually giving it a numeric argument dubbed "the garrot
  21. constant", for example:
  22.  
  23.                     C:> garrot -12
  24.  
  25. Garrot installs itself as a daemon and returns you to the DOSEMU
  26. command prompt.  You may re-run garrot at any time if you wish to
  27. change the original argument.  Type 'garrot -h' for a help screen,
  28. and 'garrot -q' to query current garrot settings. 
  29.  
  30.  
  31.  
  32. Question 1.3  What is the "garrot constant"? How does one determine the
  33.               proper value?
  34.  
  35. The garrot constant is the numeric argument which provides the optimal
  36. balance between DOSEMU performance and idle-time cpu usage.  It appears
  37. that this optimal value is approximately equal to one-half of your Linux
  38. BogoMips value. For example, if your system reports a BogoMips value of
  39. 20, then choosing a garrot constant value of 10 will be a good first
  40. approximation. Garrot uses this number as a counter threshold for
  41. pre-empting DOSEMU after detecting a certain period of idleness. Lower
  42. values imply less tolerance for idle time CPU use. 
  43.  
  44. You may determine this empirically by running 'top' in one virtual
  45. console and running DOSEMU in another.  CPU usage as reported by 'top'
  46. will drop to 2% or less at the critical value. It is a non-linear
  47. function, and the change is abrupt. Choose successively lower values
  48. for the garrot constant until you see the drop. Allow a couple moments
  49. for 'top' to stabilize and update after changing the garrot value.
  50. The garrot value which caused the sudden drop in CPU usage, or the value
  51. one below it, is probably your optimal setting---the "garrot constant"
  52. for your system. If in doubt, chose the value one below the drop point. 
  53.  
  54. Note that if you run Garrot without any command arguments, it will try
  55. to guess an initial value for you. This value should be taken with a
  56. grain of salt. Unfortunately the timers available inside of the DOSEMU
  57. sessions are not adequate to accurately calculate the garrot constant.
  58. Using one-half of your BogoMips value is probably more accurate than
  59. the guess that garrot can make. After you have determined the proper
  60. value, you may want to add the garrot command to one of your "DOS"
  61. initialization files (e.g. autoexec.bat) so that garrot will be
  62. invoked every time you start a DOSEMU session.
  63.  
  64.  
  65. Question 1.4  Does Garrot hurt DOSEMU performance? 
  66.  
  67. By freeing more CPU time for useful tasks, Garrot helps both DOSEMU
  68. performance and overall Linux system performance.  Responsiveness is
  69. better and stability is improved. Some computationally intensive "DOS"
  70. applications may show a slight apparent decrease in performance only
  71. because DOSEMU must now share the CPU more equitably with the rest of
  72. the Linux system. The table below shows typical DOSEMU comparisons
  73. with and without garrot:
  74.  
  75.                test: compile large source tree 
  76.  
  77.                    time         %cpu use 
  78.                   min:sec   (active and idle) 
  79.                +-------------------------------+
  80.    with garrot |    4:30      85.5%    0.0%    |
  81.                +-------------------------------+
  82.        without |    4:20      97.5%   97.0%    |
  83.                +-------------------------------+
  84.  
  85. test conditions: AMD 486dx-40 uP, kernel 1.1.64, dosemu 0.53.28, MS-DOS 5.0 
  86.  
  87.  
  88. Note that you may easily change the arguments to garrot at anytime.
  89. Re-run garrot with a high value numeric argument to disable it. Values
  90. above the ideal "garrot constant" will cause the OS inside of DOSEMU
  91. to revert to its former behavior of sucking up 98% of the CPU time.
  92. Note that DOSEMU itself is not at fault. If anything, Garrot
  93. demonstrates the remarkable efficiency of DOSEMU. When you see the CPU
  94. meter pegged at 98%, it is the software inside of the DOSEMU which is
  95. causing the problem, not DOSEMU itself.
  96.  
  97.  
  98.  
  99. Question 1.5  What are the risks of using Garrot? 
  100.  
  101. None of which I am aware. But remember, Garrot is offered "as-is"
  102. without warranty of any kind (see the GPL). Even so, garrot does not
  103. touch any risky part of the system. It doesn't involve disks or file
  104. systems. Some DOS programs that bypass certain parts of both the BIOS
  105. and DOS system may cause CPU usage to rise because Garrot can not
  106. figure out what it going on. Of course there may be blind spots in
  107. garrot that need fixing. Please report any quirks to me, or
  108. suggestions for improvement. Garrot has not been widely tested. It is
  109. known to work with MS-DOS 5.0, and it should work with later versions.
  110. Earlier versions are an unknown. Please forward your reports.
  111.  
  112.  
  113. Copyright (C) 1994  Thomas G. McWilliams
  114.  
  115. author e-mail: tgm@netcom.com, 
  116.              : thomas.mcwilliams@f615.n109.z1.fidonet.org
  117.  
  118.  
  119.